#include <intrinsics.h>
#include <iom32.h>
#include "subrutinas.h"
#include "USART_func.h"
#include "queue.h"

extern Queue *pTxA, *pRxA;
extern char recibido, transmitido;
char aux;
extern int t;

#pragma vector=USART_RXC_vect  
__interrupt void ISR_RxA(){     //llega un dato
  aux = USART_Receive();
  QueueAdd(pRxA, aux);
  if (aux == ' '){              //se presiona espacio
    recibido=1;
  }
}

#pragma vector=USART_UDRE_vect //USART_TXC_vect
__interrupt void ISR_TxA(){     //transmiti dato
  aux = QueueGet(pTxA);
  if (aux==' '){              //se transmite espacio
    transmitido=1;
    UCSRB ^= (1<<(UDRIE));
  }
  USART_Transmit(aux);
}

#pragma vector=TIMER1_COMPB_vect
__interrupt void TimerInc(void){
  t=0;
}
